home *** CD-ROM | disk | FTP | other *** search
- #ifndef knl_SOSI
- #define knl_SOSI 1
-
- #include "knl_use.h"
- class _sos_Object;
- class _sos_Ordered_object;
- class _sos_Scalar_object;
- class _sos_String;
- class _sos_Named;
- class _sos_Type;
- class _sos_Object
- { friend class sos_Object;
- virtual sos_Offset _offset_sos_Object () { return 0; }
- public:
- static _sos_Object* _make(sos_Typed_id&);
- virtual sos_Offset _size();
- void _create(sos_Typed_id&);
- void _copy(sos_Typed_id&,sos_Object);
- virtual sos_Object _clone(sos_Typed_id&,sos_Container);
- virtual void destroy(sos_Typed_id&);
- virtual void assign(sos_Typed_id&,sos_Object);
- virtual sos_Bool equal(sos_Typed_id&,sos_Object,sos_Eq_kind=EQ_STRONG);
- virtual sos_Int hash_value(sos_Typed_id&);
- virtual sos_Type type(sos_Typed_id&);
- virtual sos_Bool has_type(sos_Typed_id&,sos_Type _p1);
- virtual sos_Bool isa(sos_Typed_id&,sos_Type _p1);
- virtual sos_Bool is_some(sos_Typed_id&,sos_Type _p1);
- virtual sos_Bool is_value(sos_Typed_id&);
- virtual sos_Int size(sos_Typed_id&);
- virtual sos_Bool identical(sos_Typed_id&,sos_Object _p1);
- virtual sos_Bool __equal(sos_Typed_id&,sos_Object _p1);
- virtual sos_Bool __not_equal(sos_Typed_id&,sos_Object _p1);
- virtual sos_Bool like(sos_Typed_id&,sos_Object _p1);
- virtual sos_Comp_result compare_ids(sos_Typed_id&,sos_Object _p1);
- private:
- virtual sos_Id get_type_id(sos_Typed_id&);
- virtual void set_type_id(sos_Typed_id&,sos_Id);
- public:
- protected:
- static void local_assign(sos_Object _p1,sos_Object _p2);
- static sos_Bool local_equal(sos_Object _p1,sos_Object _p2,sos_Eq_kind _p3);
- static sos_Int local_hash_value(sos_Object _p1);
- };
- extern _sos_Object *__sos_Object_obj;
- class _sos_Ordered_object:virtual public _sos_Object
- { friend class sos_Ordered_object;
- virtual sos_Offset _offset_sos_Object () { return 0; }
- virtual sos_Offset _offset_sos_Ordered_object () { return 8; }
- public:
- static _sos_Ordered_object* _make(sos_Typed_id&);
- virtual sos_Offset _size();
- void _create(sos_Typed_id&);
- void _copy(sos_Typed_id&,sos_Ordered_object);
- virtual sos_Object _clone(sos_Typed_id&,sos_Container);
- virtual void destroy(sos_Typed_id&);
- virtual void assign(sos_Typed_id&,sos_Object);
- static void local_assign(sos_Ordered_object,sos_Object);
- virtual sos_Bool equal(sos_Typed_id&,sos_Object,sos_Eq_kind=EQ_STRONG);
- static sos_Bool local_equal(sos_Ordered_object,sos_Object,sos_Eq_kind);
- virtual sos_Int hash_value(sos_Typed_id&);
- static sos_Int local_hash_value(sos_Ordered_object);
- virtual sos_Comp_result compare(sos_Typed_id&,sos_Ordered_object _p1);
- virtual sos_Bool __less(sos_Typed_id&,sos_Ordered_object _p1);
- virtual sos_Bool __less_equal(sos_Typed_id&,sos_Ordered_object _p1);
- virtual sos_Bool __greater(sos_Typed_id&,sos_Ordered_object _p1);
- virtual sos_Bool __greater_equal(sos_Typed_id&,sos_Ordered_object _p1);
- protected:
- };
- extern _sos_Ordered_object *__sos_Ordered_object_obj;
- class _sos_Scalar_object:virtual public _sos_Object
- { friend class sos_Scalar_object;
- virtual sos_Offset _offset_sos_Object () { return 0; }
- virtual sos_Offset _offset_sos_Scalar_object () { return 8; }
- public:
- static _sos_Scalar_object* _make(sos_Typed_id&);
- virtual sos_Offset _size();
- void _create(sos_Typed_id&);
- void _copy(sos_Typed_id&,sos_Scalar_object);
- virtual sos_Object _clone(sos_Typed_id&,sos_Container);
- virtual void destroy(sos_Typed_id&);
- virtual void assign(sos_Typed_id&,sos_Object);
- virtual sos_Bool equal(sos_Typed_id&,sos_Object,sos_Eq_kind=EQ_STRONG);
- virtual sos_Int hash_value(sos_Typed_id&);
- protected:
- static void local_initialize(sos_Scalar_object _p1);
- static void local_finalize(sos_Scalar_object _p1);
- static void local_assign(sos_Scalar_object _p1,sos_Object _p2);
- static sos_Bool local_equal(sos_Scalar_object _p1,sos_Object _p2,sos_Eq_kind _p3);
- static sos_Int local_hash_value(sos_Scalar_object _p1);
- };
- extern _sos_Scalar_object *__sos_Scalar_object_obj;
- class _sos_String:virtual public _sos_Ordered_object
- { friend class sos_String;
- virtual sos_Offset _offset_sos_Object () { return 0; }
- virtual sos_Offset _offset_sos_Ordered_object () { return 8; }
- virtual sos_Offset _offset_sos_String () { return 8; }
- public:
- static _sos_String* _make(sos_Typed_id&);
- virtual sos_Offset _size();
- void _create(sos_Typed_id&);
- void _copy(sos_Typed_id&,sos_String);
- virtual sos_Object _clone(sos_Typed_id&,sos_Container);
- virtual void destroy(sos_Typed_id&);
- virtual void assign(sos_Typed_id&,sos_Object);
- virtual sos_Bool equal(sos_Typed_id&,sos_Object,sos_Eq_kind=EQ_STRONG);
- virtual sos_Int hash_value(sos_Typed_id&);
- virtual sos_Cstring make_Cstring(sos_Typed_id&);
- virtual void assign_Cstring(sos_Typed_id&,sos_Cstring _p1);
- virtual void __plus_assign(sos_Typed_id&,sos_String _p1);
- virtual sos_Int size(sos_Typed_id&);
- virtual sos_Comp_result compare(sos_Typed_id&,sos_Ordered_object _p1);
- virtual sos_Int get_length(sos_Typed_id&);
- private:
- virtual void set_length(sos_Typed_id&,sos_Int);
- virtual sos_Offset get_address(sos_Typed_id&);
- virtual void set_address(sos_Typed_id&,sos_Offset);
- public:
- protected:
- static void local_initialize(sos_String _p1);
- static void local_finalize(sos_String _p1);
- static void local_assign(sos_String _p1,sos_Object _p2);
- static sos_Bool local_equal(sos_String _p1,sos_Object _p2,sos_Eq_kind _p3);
- static sos_Int local_hash_value(sos_String _p1);
- };
- extern _sos_String *__sos_String_obj;
- class _sos_Named:virtual public _sos_Object
- { friend class sos_Named;
- virtual sos_Offset _offset_sos_Object () { return 0; }
- virtual sos_Offset _offset_sos_Named () { return 8; }
- public:
- static _sos_Named* _make(sos_Typed_id&);
- virtual sos_Offset _size();
- void _create(sos_Typed_id&);
- void _copy(sos_Typed_id&,sos_Named);
- virtual sos_Object _clone(sos_Typed_id&,sos_Container);
- virtual void destroy(sos_Typed_id&);
- virtual void assign(sos_Typed_id&,sos_Object);
- static void local_assign(sos_Named,sos_Object);
- virtual sos_Bool equal(sos_Typed_id&,sos_Object,sos_Eq_kind=EQ_STRONG);
- static sos_Bool local_equal(sos_Named,sos_Object,sos_Eq_kind);
- virtual sos_Int hash_value(sos_Typed_id&);
- static sos_Int local_hash_value(sos_Named);
- virtual sos_String get_name(sos_Typed_id&);
- virtual void set_name(sos_Typed_id&,sos_String _p1);
- protected:
- };
- extern _sos_Named *__sos_Named_obj;
- class _sos_Type:virtual public _sos_Named
- { friend class sos_Type;
- virtual sos_Offset _offset_sos_Object () { return 0; }
- virtual sos_Offset _offset_sos_Named () { return 8; }
- virtual sos_Offset _offset_sos_Type () { return 8; }
- public:
- static _sos_Type* _make(sos_Typed_id&);
- virtual sos_Offset _size();
- void _create(sos_Typed_id&);
- void _copy(sos_Typed_id&,sos_Type);
- virtual sos_Object _clone(sos_Typed_id&,sos_Container);
- virtual void destroy(sos_Typed_id&);
- virtual void assign(sos_Typed_id&,sos_Object);
- static void local_assign(sos_Type,sos_Object);
- virtual sos_Bool equal(sos_Typed_id&,sos_Object,sos_Eq_kind=EQ_STRONG);
- static sos_Bool local_equal(sos_Type,sos_Object,sos_Eq_kind);
- virtual sos_Int hash_value(sos_Typed_id&);
- static sos_Int local_hash_value(sos_Type);
- virtual sos_Bool is_derived_from(sos_Typed_id&,sos_Type _p1);
- virtual sos_Bool is_derived_from_some(sos_Typed_id&,sos_Type _p1);
- virtual sos_Bool is_scalar(sos_Typed_id&);
- virtual sos_Type base(sos_Typed_id&);
- virtual sos_Type root(sos_Typed_id&);
- virtual sos_String get_name(sos_Typed_id&);
- virtual void set_name(sos_Typed_id&,sos_String);
- virtual sos_Int get_object_size(sos_Typed_id&);
- virtual void set_object_size(sos_Typed_id&,sos_Int);
- protected:
- };
- extern _sos_Type *__sos_Type_obj;
- extern void _knl_init_sos();
- #endif
-